package com.shenfa.tools;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 数据对象类型的转换类应用
 * @author STEEL-CHINA
 * @create 
 */
public class SteelDataApp {
	private final Object _value;
	
	/**
	 * 构造方法
	 * 根据指定的对象构建一个数据对象类型转换应用类
	 * @param value 数据对象
	 */
	public SteelDataApp(Object value) {
		_value = value;
	} // End SteelDataApp
	
	/**
	 * 获取字符数据
	 * @return char 字符数据
	 */
	public char getChar() {
		return SteelDataType.getChar(_value);
	} // End getChar
	
	/**
	 * 获取字节数据
	 * @return byte 字节数据
	 */
	public byte getByte() {
		return SteelDataType.getByte(_value);
	} // End getByte
	
	/**
	 * 获取短整型数据
	 * @return short 短整型数据
	 */
	public short getShort() {
	
		//new SimpleDateFormat("yyy-MM").format(); 
		return SteelDataType.getShort(_value);
	} // End getShort
	
	/**
	 * 获取整型数据
	 * @return int 整型数据
	 */
	public int getInt() {
		return SteelDataType.getInt(_value);
	} // End getInt
	
	/**
	 * 获取长整型数据
	 * @return long 长整型数据
	 */
	public long getLong() {
		return SteelDataType.getLong(_value);
	} // End getLong
	
	/**
	 * 获取单精度浮点数据
	 * @return float 单精度浮点数据
	 */
	public float getFloat() {
		return SteelDataType.getFloat(_value);
	} // End getFloat
	
	/**
	 * 获取双精度浮点型数据
	 * @return double 双精度浮点型数据
	 */
	public double getDouble() {
		return SteelDataType.getDouble(_value);
	} // End getDouble
	
	/**
	 * 获取字符串型数据
	 * @return String 字符串型数据
	 */
	public String getString() {
		return SteelDataType.getString(_value);
	} // End getString
	
	/**
	 * 获取日期型数据
	 * @return date 日期型数据
	 */
	public Date getDate() {
		return SteelDataType.getDate(_value);
	} // End getDate
	
	/**
	 * 获取布尔值数据
	 * @return boolean 布尔值数据
	 */
	public boolean getBoolean() {
		return SteelDataType.getBoolean(_value);
	} // End getBoolean
	
	public static void main(String[] args) {
		SteelDataApp app = new SteelDataApp("1311111111111");
		
		SteelTools.log(app.getBoolean());
		SteelTools.log(app.getInt());
		SteelTools.log(app.getChar());
		SteelTools.log(app.getDate());
		SteelTools.log(SteelDataType.getString(app.getDate()));
	}
	
} // End class SteelDataApp
